Machine translation using language order templates

ABSTRACT

Many machine translation scenarios involve the generation of a language translation rule set based on parallel training corpuses (e.g., sentences in a first language and word-for-word translations into a second language.) However, the translation of a source corpus in a source language to a target corpus in a target language involves at least two aspects: selecting elements of the target language to match the elements of the source corpus, and ordering the target elements according to the semantic organization of the source corpus and the grammatic rules of the target language. The breadth of generalization of the translation rules derived from the training may be improved, while retaining contextual information, by formulating language order templates that specify orderings of small sets of target elements according to target element types. These language order templates may be represented with varying degrees of association with the alignment rules derived from the training in order to improve the scope of target elements to which the ordering rules and alignment rules may be applied.

BACKGROUND

Machine translation techniques involve a translation of a source corpusin a source language to a target corpus in a target language (e.g., asource passage in the English language to a target passage in theSpanish language.) Such machine translation techniques often involvechoosing elements of the target language that match respective elementsof the source corpus, and may be facilitated by referencing atranslation set, such as a unidirectional or bidirectional dictionary.

Many types of machine translators may be devised by designing a learningalgorithm, such as an artificial neural network or an expert system, andtraining the algorithm against a training data set, such as many corporaof the source language associated with equivalent, narrowly tailoredcorpora of the target language (e.g., an English-language passage and aword-for-word translation to a Spanish passage.) By training against asufficiently large training data set, the machine translator may beequipped with a set of translation heuristics and/or configured with adesirable selection of translation parameters that guide the searchingand translating techniques.

SUMMARY

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key factors oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter.

A significant challenge for many machine translation scenarios arisesfrom the syntactic constraints of the source language and the targetlanguage. Specifically, an accurate translation involves not only aselection of elements in the target language that are acceptablyequivalent to the elements of the source language, but also an orderingof the elements to satisfy the standards of the target language.Different languages may have different rules for correctly ordering theelements of the language, so it may not be acceptable to order thetranslated elements of the target language according to the ordering ofelements in the source language.

Many machine translation techniques attempt to derive translation andordering heuristics together from the training data set, and therebyformulate one or more rules that capture both features (e.g., a rulethat “old man” in English translates to “hombre viejo” in Spanish, bothin choice of words and ordering.) However, combined rules may be overlyspecific, and may be difficult to generalize to cover many syntacticvariations (e.g., if similar ordering is a prerequisite of a rule for atranslation of “old man,” then “old and very wise man” may not detectedby the same rule.)

An alternative technique for improving the applicability of translationrules and heuristics involves generating ordering rules from thetraining data set apart from (a) any element translation and (b)alignment rules generated therefrom. The ordering rules may beformulated as templates specifying an ordering of element types in thetarget language; e.g., analyzing the Spanish phrase “hombre viejo” mayresult in an ordering template of “noun-adjective” for the ordering ofsuch word types (as opposed to the “adjective-noun” ordering in theanalogous English phrase “old man.”) The training may therefore resultin a set of small ordering templates that may inform the ordering ofelements translated from the source corpus into the target language.Moreover, deriving small ordering templates may facilitate thecombination of such templates to cover a wider range of linguisticstructure in the source corpus. For example, a first Spanish languageordering template specifying a “noun-adjective” ordering and a secondSpanish language ordering template specifying an “adverb-adjective”ordering may be utilized to order the phrase “very old man” correctly as“noun-adverb-adjective,” or “hombre muy viejo.” The ordering of elementsmay be performed in many ways, and may be combined with other aspects ofthe translation (such as the aligning of elements) to provide additionalimprovements in machine translation.

To the accomplishment of the foregoing and related ends, the followingdescription and annexed drawings set forth certain illustrative aspectsand implementations. These are indicative of but a few of the variousways in which one or more aspects may be employed. Other aspects,advantages, and novel features of the disclosure will become apparentfrom the following detailed description when considered in conjunctionwith the annexed drawings.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of an exemplary training scenario involvingthe generating of a language translation rule set comprising at leastone language order template.

FIG. 2 is an illustration of an exemplary translating scenario involvingthe translating of a source corpus in a source language into a targetlanguage using a language translation rule set comprising at least onelanguage order template.

FIG. 3 is a flow diagram illustrating an exemplary method of generatinga language translation rule set comprising at least one language ordertemplate.

FIG. 4 is a flow diagram illustrating an exemplary method of translatinga source corpus in a source language into a target language using alanguage translation rule set comprising at least one treelettranslation pair and at least one language order template.

FIG. 5 is an illustration of an exemplary language order templateupdating scenario involving the generation of a language order templatefrom two smaller language order templates.

FIG. 6 is an illustration of an exemplary recursive search scenario 100involving a recursive evaluation of candidate language order templatesagainst a set of ordered and unordered target elements.

FIG. 7 is an illustration of an exemplary computer-readable mediumcomprising processor-executable instructions configured to embody one ormore of the provisions set forth herein.

FIG. 8 illustrates an exemplary computing environment wherein one ormore of the provisions set forth herein may be implemented.

DETAILED DESCRIPTION

The claimed subject matter is now described with reference to thedrawings, wherein like reference numerals are used to refer to likeelements throughout. In the following description, for purposes ofexplanation, numerous specific details are set forth in order to providea thorough understanding of the claimed subject matter. It may beevident, however, that the claimed subject matter may be practicedwithout these specific details. In other instances, structures anddevices are shown in block diagram form in order to facilitatedescribing the claimed subject matter.

Machine translation techniques may be developed with a proficiency attranslating from a source corpus specified according to a sourcelanguage to a target corpus specified according to a target language.The corpora may comprise (e.g.) a human-readable document, such as anews article; a computer-readable document, such as a programminglanguage; or a data set, such as an image structured according to onelanguage (e.g., pixels in a two-dimensional image representation) and tobe used as the basis for generating an image structured according toanother language (e.g., voxels in a three-dimensional imagerepresentation.)

Machine translation techniques often involve the training of a learningalgorithm, such as an artificial neural network, using training corpora,such as a corpus in the source language and a semantically equivalenttranslation of the corpus in the target language. For example, aSpanish-to-English machine translator may be trained using a set ofSpanish sentences with semantically equivalent English translations. Themachine translator may therefore be trained to recognize semanticallyequivalent aspects of the translation between the languages, e.g., therules for inserting the English articles “a,” “an,” and “the” in atarget English sentence in view of the contents of the source Spanishsentence.

Syntax-based machine translation techniques extend these concepts withthe use of an external parser that breaks the source corpus into asequence of elements, annotates each element with an element type (suchas a part of speech, e.g., noun, verb, or determiner), and identifiesanother element in the corpus that is semantically superior to theelement. This information is synthesized as a dependency treerepresenting the relationships between the elements of the corpus, withthe predominantly superior element positioned as the root node of thetree. A syntax-based machine translator learns rules that involve asyntactic representation, e.g. a pair of dependency trees representingthe corpora. A syntax-directed translator operates on a parsedrepresentation of the source language. One approach for syntax-directedtranslation involves the use of top-down transduction rules, which areformulated as a source language tree and a target language tree, eachcomprising two types of nodes: an element type node specifying anelement type in the language represented by a tree (and may have otherchildren), or a variable that corresponds to a variable in the othertree and has no child nodes. A transduction rule may be found to match adependency tree at a given node if we can find a correspondence fromeach element of the of the transduction rule to a node of the dependencytree; e.g., if the rule node has a lexical item, then this lexical itemmatches that of the input tree node and all children of that input treenode have a correspondence with some lexical item node. Such rules canbe applied to transduce the source tree into a target tree.

A translation technique based on the use of transduction rules maytransform an input tree structure into an output tree structure using atree transducer, which is a set of small mappings that can transformtrees by recursive application. For example, we might start with anoperator tree *(2, +(3, 4)) to represent the mathematical expression“2*(3+4)”. Each operator + and * takes a list of children as arguments,and represents the action of adding or multiplying their values. A treetransducer is composed of a set of rules, each of which has aleft-hand-side tree containing 0 or more distinct variables (each ofwhich has no children), and a right-hand-side with an equivalent set ofvariables (again with no children); each such rule describes how a treemay be transformed. For example, one such ruleset might be “*(X, +(Y,Z))→+(*(X,Y),*(X,Z))”, “2→2”, “3→3”, “4→4”, which distributesmultiplication across addition. A rule matches a given input tree at agiven node via a mapping from the rule left-hand-side nodes to the inputtree nodes, such that each input node is either (a) mapped to by avariable, or (b) has the same label as the node mapped to it and all itschildren are also mapped to by some other rule node. To apply a rulesetto an input tree, we find a rule that matches the root node, thenreplace the input tree by the right-hand-side of the rule, with eachvariable replaced by the result of recursively applying the transducer.Returning to the example ruleset from above, we can transduce the inputtree “*(2, +(3, 4))” into the output tree “+(*(2, 3), *(2, 4))”. Oftenmany rules may match at a given node. We can also associate a score witheach rule in a transducers ruleset that represents the “goodness” ofthat rule.

Some techniques use treelet translation, involving a treelet thatcomprises a connected set of subnodes of the dependency tree. Treelettranslation extracts pairs of source and target treelets from theparallel training data. First, the source training corpus is parsed intodependency trees, and the target training corpus is separated into asequence of elements. An alignment between the source elements andtarget elements is computed according to element alignment techniques.Based on this alignment, candidate treelet translation pairs areevaluated; if all of the elements of a candidate source treelet align toa at least one element in the target training corpus, and that set oftarget elements is aligned only to the source treelet, then thecandidate treelet pair is extracted. This evaluation is performed acrossthe training corpora, and a set of pairs along with is compiled, alongwith a frequency with which each treelet pair arises in the trainingcorpora. Finally, a probability for each source language treelet iscomputed given the source treelet is computed by dividing the count oftimes the pair occurred by the number of times that the source treeletarises. Given an input parse structure (such as a dependency tree), atreelet translation pair may contain sufficient information to translatea subset of the elements, and specifies the relative order between them.However, treelets are underspecified with respect to transduction rules,because they do not specify the ordering of uncovered children.Therefore, the process of finding the best translation is often muchmore computationally intensive than that of transduction approaches,since a large number of potential reorderings are considered during thesearch.

To bridge the gap between treelet translation pairs and transductionrules while enabling a faster translation, order templates may bedevised, which are simple, single-level transduction rules that specifythe ordering of element types of the elements of the corpora, and thatspecify the ordering of the children of a given node relative to itsparent. According to this technique, the training produces a languagetranslation mapping set that serves to guide the translation of futuresource corpora into target corpora (and/or vice versa.) The informationembodied in the language translation rule set includes treelettranslation pairs for translating lexical items from the first languageto the second language (e.g., for choosing the Spanish term “hombre” forthe English term “man,” and vice versa.) In addition, the languagetranslation mapping set contains order templates that specify theordering of target language child nodes with respect to their parentnodes, given a match on element types in the source language.

One significant aspect of translation that may be involved in generatinga correct target corpus is the ordering of translated elements. Amachine translator may perform an element-for-element translation of thesource corpus according to many techniques, but assembling the resultingelements of the second language in an acceptable order may be difficult.For example, the English language sentence “a very old man” may becorrectly translated into the Spanish language sentence “un hombre muyviejo,” but a word-for-word back-translation to English produces thejumbled English language phrase “a man very old.” Different languagesmay involve different rules for the ordering of elements, and a machinetranslation that does not select an adequate ordering of the elementsmay produce an incorrect jumble of elements. For example, the ancientLatin language specified a “subject-object-verb” ordering, and complexphrases of many words might separate the subject and object from theverb at the end of a sentence. Back-translating an ancient Latin corpussuch as “alterius non sit qui suus esse potest” to English (correctlytranslated as “let no man belong to another who can belong to himself”)without language-based reordering might result in a jumbled phrase (suchas “another not belong who to himself is able.”)

Some techniques attempt to model translation ordering heuristics withinthe rules that also facilitate translation. For example, a trainingalgorithm may be devised to select fragments from a parallel corpus(e.g., “old man”) and to generate rules that both specify elementtranslations into the target language (e.g., “old” translates to“viejo,” and “man” translates to “hombre”) and also the ordering of thetranslated elements (e.g., specifying an ordering of the elementsselected for “man” followed by the elements selected for “old”.) In thismanner, the training may produce a language translation rule setcomprising rules that specify both translation of small phrases and theordering of the translated elements. However, the representation of bothfacets of the translation process in one rule may limit the generalityof the rules. For example, it may be difficult to extend the rulespecifying an ordering and translating of the English phrase “old man”to other phrases, such as “old and wise man,” because the rule may beevaluated as “adjective-noun” element types while the phrase to betranslated comprises “adjective-conjunction-adjective-noun” elementtypes. In order to cover the full range of linguistic constructs ineither language, a language translation rule set may comprise a largenumber of such rules, each applying only to a small set of fragmentshaving very similar elements in a predefined order. The large number ofrules therefore increases the duration of the search while parsing afirst language corpus, and also increases the potential for search errorleading to less accurate translations.

An alternative translation technique involves a distinction between theselection of elements for translation and the ordering of elements inthe resulting translation. According to this alternative technique, fromthe parallel corpus “old man”/“hombre viejo,” two types of rules may bederived: an alignment rule that translates the elements of the phrase“old man” as (respectively) “viejo” and “hombre,” and an ordering rulethat organizes “adjective/noun” element types of the target (Spanish)corpus by ordering the noun before the adjective. Because these rulesrepresent distinct types of linguistic information, the rules gleanedfrom the parallel corpus may be generalized in several ways: byspecifying the selection of target language elements “viejo” and“hombre” for similar first language phrases (e.g., “very old man,”“strong, old, and wise man,” and “elderly man”), and by specifying theordering of the adjective “viejo” after the noun “hombre” in phrasesincluding the phrase “old man” (e.g., “hombre [muy] viejo” and “hombre[fuerte] viejo [y sabio]”). The rules could also be extrapolated toinform similar phrases (e.g., using a similar “noun-adjective” orderingfor the phrase “young boy” to produce “muchacho joven”.) Thus, thisalternative technique involves a looser coupling of the alignmentinformation of first language elements to second language elements andthe ordering information of the second language elements so produced.However, the alignment and ordering are not necessarily decoupled andapplied in isolation. For example, the alignment analysis may inform theordering of elements, such as by producing a dependency tree thatdefines the subordinate relationships of the elements, which mayfacilitate selections of ordering rules that might otherwise beambiguous. For example, in the phrase “old, very wise man,” thealignment analysis may associate the adverb “very” with the adjective“wise” instead of the adjective “old,” which may facilitate a selectionof a correct ordering “hombre viejo y muy sabio” rather than theordering “hombre muy viejo y sabio,” which translates incorrectly to“very old, wise man.”) The representation of the ordering templates withrespect to the translation and alignment rules may improve thecontext-sensitivity of the application of the language translation ruleset while preparing the target corpus.

According to this technique, the training of the machine translator mayproduce ordering templates that indicate how certain element types areordered in a target corpus that complies with the specifications of thetarget language. These ordering templates might be represented alongsidethe alignment and translating rules to include contextual informationthat may be utilized to produce more accurate translations, while alsonot unduly restricting respective rules to a narrow set of linguisticconstructs. This organization therefore imparts flexibility on the rulesthat reduces the number of rules covering the full range of lexicalconstructs in either language, reduces the duration of the search duringa translation of a corpus, and reduces the possibility of search error.

FIGS. 1-2 together illustrate a machine translation scenario utilizingthese techniques. FIG. 1 illustrates an exemplary training scenario 10wherein a parallel training data set 12 is analyzed to produce alanguage translation rule set 18. FIG. 2 illustrates an exemplarymachine translation scenario 30 depicting the use of the languagetranslation rule set 18 to translate a source corpus 32 specified in asource language into a target corpus 44 specified in a target language.

In the exemplary training scenario 10 of FIG. 1, a training algorithm isdirected to a parallel training data set 12, which comprises a set ofthree parallel fragment pairs having a source training corpus 14 and aparallel target training corpus 16. As illustrated in FIG. 1, the sourcelanguage is English and the target language is Spanish, and the elementsof the source training corpus and the parallel target training corpuscomprise (respectively) words written in an English sentence and aword-for-word translation into an equivalent Spanish sentence. Theexemplary training scenario 10 illustrates a parse of the paralleltraining data set 12 to produce parallel element aligned dependencytrees for each corpus in the training data. From these parallelelement-aligned dependency tree is extracted a language translation ruleset 18, comprising (at least) two types of rules derived from theparallel training data set 12: treelet translation pairs for selectingSpanish lexical items given English lexical items, and order templatesfor selecting an acceptable ordering of Spanish elements given anEnglish tree structure and element types. As illustrated in thisexemplary training scenario 10, the alignment rules are specified asdependency treelet translation pairs 20 that specify a hierarchicalrelationship between various elements. The information represented by adependency treelet translation pair 20 includes only relative orderingbetween words included in the treelets, as well as a superior andsubordinate lexical relationship between elements, which may facilitatethe translation and parsing of the source training corpus 14. Moreover,the dependency treelet translation pairs 20 illustrated in FIG. 1 areconfigured with a tree structure, which may be handled in modularfashion and concatenated to produce a linguistic hierarchy of arbitrarydepth and breadth.

As further illustrated in the exemplary training scenario 10 of FIG. 1,the language translation rule set 18 also comprises language ordertemplates 22, each specifying an ordering of the direct children of agiven target element relative to that element, given a matching parentand child set on the source side. The ordering is based not on theordering of specific elements (such as particular Spanish words), butrather on element types in the source language, such as the parts ofspeech of the English language. The language order templates 22 areinferred from parallel element-aligned dependency trees by picking eachpair of aligned source and target elements and tracking the order andelement types of the source parent and all its direct children, theorder of the target parent and all its children, and the correspondencebetween the two. The language order templates 22 may identify theordering of particular elements of the target language given aparticular set of source side matches, but may also be used to choose anordering for similar elements; e.g., a particular language ordertemplate may indicate that Spanish adverbs similar to “muy” and Spanishadjectives similar to “importante” may be ordered in “adverb-adjective”order. In this manner, each language order template may be generalizedto specify an ordering of a large number of contextually similarelements of the target language. Moreover, the breadth of generalizationmay be of many degrees between narrow (e.g., only specifying ordering ofsynonyms of particular elements) and broad (e.g., specifying ordering ofany words of the same parts of speech.) The scope of generalitytherefore permits a preservation of the context in which the languageorder template 22 is applicable, while not unduly constraining thetemplate to the elements of the target corpus fragment from which it isderived.

It may be appreciated that the inference of language order templates 22involves an evaluation of orderings among related elements. For example,language order templates 22 may be devised to represent the ordering inSpanish of the English words “a” and “book,” and of the English Spanishwords “very” and “old,” because such words are lexically related;however, no language order template 22 is generated for ordering “a” and“sold,” or “book” and “very,” because these words are not related. Thus,the induction of ordering information that informs the generation oflanguage order templates utilizes similar information used in thegeneration of the dependency treelet translation pairs 20. Accordingly,the language order templates 22 may be developed utilizing therelationship determinations made during the generation of the dependencytreelet translation pairs 20. The language order templates 22 may alsobe defined with reference to particular dependency treelet translationpairs 20; e.g., the language order template 22 defining an ordering of“verb-adjective” may be defined with relation to the dependency treelettranslation pair 20 defining the relationships between “es” and“importante.” This definition of the language order templates 22 in viewof one or more dependency treelet translation pairs 20 promotes thepreservation of contextual information (e.g., “verb-adjective” may be acorrect pairing for the intransitive verb “es,” but other verbs may beassociated with different orderings with respect to other elementtypes.) Moreover, the language order templates 22 may be modularlyrepresented, such that a series of language order templates 22 may beselected to determine a correct ordering for a longer sequence ofelements of the target language. In this manner, the exemplary trainingscenario 10 of FIG. 1 illustrates the generation of translation andaligning rules, such as dependency treelet translation pairs 20, as wellas language order templates 22, based on the parallel training data set12.

FIG. 2 illustrates an exemplary translating scenario 30 utilizing thelanguage translation rule set 18 derived in the exemplary trainingscenario 10 of FIG. 1. In FIG. 2, a source corpus 31 is presented in thesource language (in this case, English). The source dependency parserthen produces a dependency tree 32 containing a hierarchical arrangementof nodes 34. Next, treelet translation pairs 36 whose source sides areequal to a subgraph of 32 are identified from the training corpus; thisshows only three such pairs, though many more are available. Then foreach node in treelet translation pair 36, an order template 38 isidentified that covers that node and is consistent with thecorresponding node in the input tree 32. For example, in the treelettranslation pair 36, the node labeled “man” corresponds to the inputnode 34 labeled “man”, which has two direct descendents: the determiner“a” and the adjective “old”. An order template 38 is identified thatmatches the input node 34 “man” along with both of its children,specifying an order that is consistent with the target side of thetreelet translation pair 36. Next we consider the node labeled “old” inthe treelet translation pair 36. It corresponds to the input node 34labeled “old”, which has one direct descendent labeled “very”. A secondorder template 38 is identified that covers the node “old” with itsadjective child. Given a treelet translation pair 36 and havingidentified matching order templates 38, a tree transduction rule 40 isconstructed that is specific to the input corpus 30 by combining theordering information from the order templates and the lexicaltranslations from the treelet translation pair. A set of treetransduction rules 40 is constructed for each treelet translation pair.Finally, the source dependency tree 32 maybe transduced to a targetdependency tree 44 (which is the translation) using the treetransduction rules 40.

The techniques illustrated in FIGS. 1-2 may be implemented in manyembodiments. FIG. 3 illustrates one embodiment that incorporates some ofthe techniques utilized in the exemplary training scenario 10 of FIG. 1,illustrated here as an exemplary method 50 of generating a languagetranslation rule set comprising at least one language order template,using at least one source training corpus in a source language alignedwith a parallel target training corpus in a target language. Theexemplary method 50 begins at 52 and involves evaluating respectiveparallel training corpora in the following manner. First, the exemplarymethod 50 involves parsing 54 the source training corpus to identifyelement types for respective elements of the source training corpus(such as the identifying of parts of speech of the words of the sourcetraining corpora 16.) The exemplary method 50 also involves generating56 a parse tree mapping the elements of the source training corpus tothe elements of the target training corpus. The exemplary method 50 theninvolves generating 58 at least one candidate treelet translation pairbased no the parse tree, and generating 60 at least one candidate ordertemplate based on the parse tree and the element types of the sourcetraining corpus. After evaluating the parallel training corpora, theexemplary method 50 generates the language translation rule set byselecting 62 treelet translation pairs from the candidate treelettranslation pairs, and by selecting 64 order templates from thecandidate order templates. By generating an acceptable set of treelettranslation pairs and order templates based on the analyses of theparallel corpora, the exemplary method 50 thereby achieves thegeneration of a language translation rule set, and so ends at 66.

FIG. 4 illustrates an embodiment that incorporates some of thetechniques utilized in the exemplary translating scenario 30 of FIG. 2,illustrated herein as an exemplary method 70 of translating a sourcecorpus in a source language into a target language using a languagetranslation rule set comprising at least one treelet translation pairand at least one language order template. The exemplary method 70 beginsat 72 and involves parsing 74 the source corpus to identify elementtypes for respective source corpus elements. The exemplary method 70also involves generating 76 a parse tree mapping the source corpuselements. The exemplary method 70 also involves selecting 78 at leastone treelet translation pair mapping at least one source corpus elementto at least one target corpus element, and selecting 80 language ordertemplates corresponding to unordered source corpus elements. Theexemplary method 70 also involves generating 82 a target corpusaccording to the parse tree, selected treelet translation pairs, andselected language order templates. Having generated a translationcomprising a target corpus ordered according to the treelet translationpair and the language order templates of the language translation ruleset, the exemplary method 70 ends at 84.

The techniques discussed herein may be devised with variations in manyaspects, and some variations may present additional advantages and/orreduce disadvantages with respect to other variations of these and othertechniques. Moreover, some variations may be implemented in combination,and some combinations may feature additional advantages and/or reduceddisadvantages through synergistic cooperation. The variations may beincorporated in various embodiments (e.g., the exemplary method 50 ofFIG. 3 and the exemplary method 70 of FIG. 4) to confer individualand/or synergistic advantages upon such embodiments.

A first aspect that may vary among embodiments of these techniquesrelates to the manner of building the language order templates andincorporating them in the language translation rule set. As discussedwith reference to FIG. 1, the language order templates 22 define theordering of various element types 42 of various target elements 46, andmay be specified with reference to particular elements of the targetlanguage (e.g., a particular language order template may indicate thatadverbs similar to “very” and adjectives similar to “important” may beordered in Spanish in “adverb-adjective” order.) The breadth ofgeneralization may be adjusted to improve the heuristic fit with thetarget language. As one example, the breadth of individual languageorder templates may be individually adjusted; e.g., while evaluating thetarget training corpora 16, a training algorithm may extend the breadthof a language order template that appears to be followed in many targetcorpora, and may narrow the breadth of a language order template thatonly appears to apply to a small and well-defined set of target languageelements.

A second variation of the training may involve extending variouslanguage order templates to fit larger sets of target elements, such aslonger phrases of parts of speech in a target language. Where two ormore language order templates are frequently utilized concurrently, acomposite language order template may be generated that combines theordering of the elements. Accordingly, techniques for generatinglanguage order templates may identify an ordering of target elementtypes comprising at least one element type specified by a first languageorder template and at least one unspecified element type (i.e., anelement type that is not included in the first language order template),where an opportunity exists to create a larger language order template.In this circumstance, a second language order template may be generated,comprising the first language order template and including in theordering the unspecified element types, and the second language ordertemplate may be added to the language translation rule set. FIG. 5illustrates an exemplary language order template updating scenario 90,wherein a first language order template 92 specifying a“determiner-noun” ordering and a second language order template 94specifying a “noun-adjective” ordering may be combined to produce athird language order template 96 specifying a“determiner-noun-adjective” ordering. Such composite rules expand thesize of the language translation rule set, but may facilitate themachine translation by specifying the ordering of larger sets of elementtypes while applying fewer rules to the target elements.

A third variation of the training involves deriving other types ofinformation from the target training corpora 16 while generating thelanguage order templates 22, which results in a language translationrule set 18 comprising various types of information along with theordering. The language translation rule set 18 may include informationfor selecting aligned elements of the target language to match elementsof the source language, for identifying hierarchical relationshipsbetween elements, and/or for identifying element types (such as parts ofspeech) of the elements. As a first example, in addition to generatingthe language order templates 22, the training may also generate analignment model of the source language and the target language accordingto the source training corpora 14 and the parallel target trainingcorpora 16, which may be added to the language translation rule set 18.As illustrated in FIG. 1, the alignment model may comprise at least onedependency treelet translation pair 20 that aligns source elements withtarget elements, and that defines superior/subordinate relationshipsbetween such elements and element types. Moreover, such additional rulesmay be related to the language order templates 22; e.g., the languageorder templates 22 may be specified with contextual reference to theelements of a particular dependency treelet translation pair 20.

As a second example, the training may generate not only language ordertemplates 22, but also source language order templates that specify thecontextual ordering of element types in the source language, based onanalyses of the source training corpora 14. These source language ordertemplates may be derived in a similar manner to the generation of thelanguage order templates, i.e., by identifying element types forrespective source elements of the source language, generating sourcelanguage order templates specifying an ordering of at least two elementtypes according to the source training corpus, and adding the sourcelanguage order template to the language translation rule set. The sourcelanguage order templates may be useful, e.g., for creating abidirectional language translation rule set 18 that can also translatefrom the target language back to the source language, and/or foradditionally informing the translation from the source language to thetarget language with linguistic information derived from a source corpus(e.g., hierarchical relationships and element types defined among theelements of the source corpus.) The source language order templates mayalso be useful where an ordering of language elements cannot beidentified, e.g., where two language order templates are in conflict orwhere the ordering is ambiguous. In this case, a language order templatemay be generated based on the ordering of target elements aligned withsource elements specified in at least one source language ordertemplate, e.g., by specifying an ordering based on the ordering ofanalogous element types in the source language order template for theparallel source corpus. This might not be a completely accurateordering, but it may be preferable to have a somewhat accurate orderingof such elements in the target language than not having a language ordertemplate that can parse the combination of element types. Those ofordinary skill in the art may devise many types of rules and informationthat may be added to the language translation rule set in addition tothe language order templates during the training of the machinetranslator on the parallel training data set in accordance with thetechniques discussed herein.

A second aspect that may vary among implementations of these techniquesrelates to the translation of a source corpus to a target corpus usingthe orderings specified by the language order templates in the languagetranslation rule set. The exemplary translation scenario 40 of FIG. 1represents but one of many types and organizations of machinetranslation techniques, and the techniques discussed herein relating tothe use of language order templates may be incorporated in many aspectsof the translation. A first variation relates to the use of an alignmentmodel, such as a set of dependency treelets; for example, the languagetranslation rule set may include an alignment model of the sourcelanguage and the target language, and the selecting may compriseselecting target elements aligned with source elements of the sourcecorpus according to the alignment model. The alignment model may begenerated during the training whereby the language order templates aregenerated, or may be generated through a separate training, etc. Manytypes of alignment models may be generated and utilized in this manner;e.g., the alignment model may comprise at least one dependency treeletaligning source elements with target elements. Accordingly, and asillustrated in FIG. 2, the selecting may comprise identifying at leastone dependency treelet 36 matching the source elements and selecting thetarget elements of the dependency treelet 36. Moreover, if the languageorder templates 22 are specified in relation to the dependency treelets36, the choosing may be performed by choosing at least one languageorder template 22 specifying an ordering in the target language of atleast two element types of the target elements and specifying at leastone element type for respective target elements of the dependencytreelet 36. As a second example of this variation, the alignment modelmay specify an alignment probability between at least one source elementand at least one target element; e.g., dependency trees may be generatedalong with a weight that induces a preference for the selection of morecommon or useful dependency trees over less common or useful dependencytrees. In this scenario, the selecting may involve selecting targetelements 46 that are aligned with source elements (e.g., via adependency treelet 36) that together present acceptable alignmentprobabilities according to the alignment model. Many variations in thegenerating and use of the alignment models, and in the relationships ofthe alignment models to the language order templates 22, may be devisedby those of ordinary skill in the art while implementing the techniquesdiscussed herein.

A second variation of the translating involves a continuation of thetraining and the refinement of the language translation rule set duringthe translation. As one example, the language translation rule set maybe supplemented with additional language order templates to cover newlyencountered linguistic constructs, e.g., where the machine translatoridentifies an ordering of target element types that is not specified bya language order template. In this circumstance, the machine translatormay generate a new language order template that specifying an orderingof the target element types in the target language, and may add the newlanguage order template to the language translation rule set. Forexample, if the machine translator identifies a frequent pairing oflanguage order templates (e.g., a “noun-adjective” language ordertemplate and an “adverb-adjective” language order template) during thetranslating, it may generate a new language order template specifyingthe ordering (e.g., “noun-adverb-adjective” ordering) and add it to thelanguage translation rule set. Many ways of updating the languagetranslation rule set during the translating may be devised by those ofordinary skill in the art in accordance with the techniques discussedherein.

A third variation of the translating relates to the inclusion of sourcelanguage order templates. Whereas the language order templates specifythe ordering of elements of the target corpus based on the grammaticconstraints of the target language, the source language order templatesspecify the ordering of elements of the source corpus based on thegrammatic constraints of the source language. The source language ordertemplates may be generated and added to the language translation ruleset based on analyses of the source training corpora, and may contributeto the translating in many ways. As a first example of this thirdvariation, the source language order templates may be used to resolveambiguities in the source corpus, where two possible interpretations maybe derived based on two different selections of source elements. Forexample, English phrases involving the words “man” and “walking” may beparsed either as a noun/verb combination (“the man is walking”) or as anadjective/noun combination (“the walking man crossed the street”), andthe ambiguity may be resolved with reference to source language ordertemplates that indicate the more likely construction based on theordering of the elements. Accordingly, the source language ordertemplates may be used to verify identified element types against atleast one source language order template matching the element types ofthe source elements of the source corpus; e.g., the aligning of elementsaccording to the alignment model may be verified by checking thehierarchical relationships (such as defined by dependency treelets)against the source language order templates to verify a desirablyaccurate ordering.

As a second example of this third variation, the source language ordertemplates may be used to order elements of the target language thatcannot be adequately ordered by the language order templates. Forexample, an unusual linguistic construct (such as an unusual turn ofphrase) may result in a selection of target elements that are notcovered by the language order templates, and the machine translator mayfail to choose a language order template specifying an ordering in thetarget language of at least two element types of the target elements. Inthis circumstance, the machine translator may choose an ordering of thetarget elements reflecting the ordering of the source elements in thesource language by identifying source elements aligned with the targetelements and choosing source language order templates that specify anordering in the source language of at least two element types of thesource elements. The ordering information may be used directly to orderthe elements of the target corpus, or may be used to generate a newlanguage order template that adequately specifies the ordering of thetarget elements. Those of ordinary skill in the art may devise many usesof source language order templates to facilitate the machine translationof a source corpus into a target corpus in accordance with thetechniques discussed herein.

A third aspect that may vary among implementations of these techniquesrelates to the manner of performing the ordering. It may be appreciatedthat the modular representation of the language order templates may beapplied to the set of aligned target elements (which may be organizedaccording to a dependency tree) in many ways, and that the sequence ofapplying the language order templates may lead to semantically differenttranslations (e.g., “old and very wise man” vs. “very old and wiseman.”) The choice of language order templates may therefore resemble aniterative search, wherein a first language order template is chosen fromthe language translation rule set to order at least two target elements;a second language order template is chosen to align at least onenot-yet-ordered target element with respect to one already-orderedtarget element; etc. This iteration may continue until the chosenlanguage order templates adequately cover the set of target elementssuch that a properly ordered target corpus may be generated. Moreover,it may be desirable, for any iteration, to test multiple language ordertemplates, and to evaluate the remainder of the iterative process ifrespective language order templates are chosen. Thus, the choosing oflanguage order templates may be performed as a recursive search, whichmay evaluate the search space of order templates for sequences oforderings that produce a desirable target corpus.

FIG. 6 illustrates an exemplary recursive search scenario 100 wherein aset 102 of target elements 46 is to be ordered using a languagetranslation rule set 18 comprising language order templates 22. Theexemplary recursive search scenario 100 may begin by considering a firstcandidate set 104 of language order templates 22 that may applied to theset 102 of target elements 46. For example, the “determiner-noun”language order template 22 may first be used to order the targetelements 46 “un” and “hombre”; the “adverb-adjective” language ordertemplate 22 may first be used to order the target elements 46 “muy” and“viejo”; or the “noun-adjective” language order template 22 may first beused to order the target elements 46 “hombre” and “viejo.” The machinetranslator may opt to try all three variations, wherein each trialinvolves a first set 106 of ordered target elements 46 and a secondcandidate set 108 of template rules that may be utilized to order atleast one unordered target element 46 with at least one target element46 ordered by the first chosen language order template 22. For example,if the “noun-adjective” language order template 22 is tried, the firstset 106 of ordered target elements 46 (“hombre viejo”) may next bealigned with either the adverb “muy” using an “adverb-adjective”language order template 22 or with the determiner “un” using a“determiner-noun” language order template 22. Moreover, either choicemay produce a second set 110 of ordered target elements 46 and a thirdcandidate set 112 of language order templates 22, etc. The recursivesearch may continue until a desirable set and sequence of language ordertemplates 22 are identified for application to the target elements 46 toproduce an acceptably ordered target corpus 44.

It may be appreciated that an exhaustively recursive search of thisnature may be computationally intensive, e.g., if the number of targetelements 46 is large, if the types of the target elements 46 are varied,and/or if the number and complexity of the language order templates 22are large. Therefore, in many embodiments, the recursive search may beadjusted to pare down the search space, e.g., by omitting the evaluationof sequences that do not appear likely to produce favorable orderings,and/or by recursively evaluating more promising partial orderings beforeless promising partial orderings. One such example involves aformulation of the recursive search as a beam search, wherein, at anystage of recursion, only a small number of promising candidates arechosen for evaluation at the next stage of recursion. A beam search maybe advantageous due to the search parameters that may be adjusted toimprove the speed and accuracy of the search. As a first example, thebeam search may be constrained, for respective chosen language ordertemplates, by a maximum of recursively evaluated language ordertemplates. As a second example, where the language order templatescomprising an ordering probability (e.g., specifying that the“noun-adverb-verb” ordering is a more preferable or common ordering thanan “noun-verb-adverb” ordering), the beam search may be constrained by aminimum ordering probability for recursively evaluated language ordertemplates, and/or a maximum of recursively evaluated language ordertemplates before ordering the target elements according to the orderingspecified by the at least one chosen language order template togetherhaving an acceptable ordering probability. Those of ordinary skill inthe art may be able to devise many types of recursive searches andadjustments thereof that may be suitable for recursively evaluating thechoosing of language order templates in accordance with the techniquesdiscussed herein.

These and other variations of the aspects discussed herein may beincorporated in various embodiments, such as the exemplary method 50 ofFIG. 3 and the exemplary method 70 of FIG. 4. Moreover, such embodimentsmay include combinations of such variations, which may operateindependently to produce multiple advantages, and/or cooperativelyproduce synergistic advantages. For example, the translation of a sourcecorpus to a target corpus may be viewed as an end-to-end methodinvolving both the training of the machine translator (e.g., bygenerating a language translation rule set, including target languagetranslation templates, from a set of source training corpora andparallel target training corpora) and the translation of the sourcecorpus using the target language translation templates for ordering thealigned target elements. Moreover, the end-to-end method may generate analignment model during the training, such as a set of dependencytreelets, and may utilize the dependency treelets during the translationand ordering; and/or may generate a set of source language ordertemplates, which may be used (e.g.) to verify the dependency treeletand/or to specify orderings of target element types that are not coveredby the language order templates; etc. Additionally, the language ordertemplates may be supplemented during the translating, e.g., bygenerating new language order templates to specify orderings of newlyencountered combinations of target element types, etc. Many suchcombinations of the variations of the aspects discussed herein may bedevised by those of ordinary skill in the art while implementing thetechniques to achieve the translation and ordering of the source corpusaccording to the language order templates.

Still another embodiment involves a computer-readable medium comprisingprocessor-executable instructions configured to apply the techniquespresented herein. An exemplary computer-readable medium that may bedevised in these ways is illustrated in FIG. 7, wherein theimplementation 120 comprises a computer-readable medium 122 (e.g., aCD-R, DVD-R, or a platter of a hard disk drive), on which is encodedcomputer-readable data 124. This computer-readable data 124 in turncomprises a set of computer instructions 126 configured to operateaccording to the principles set forth herein. In one such embodiment,the processor-executable instructions 126 may be configured to perform amethod of generating a language translation rule set comprising at leastone language order template using at least one source training corpus ina source language aligned with a parallel target training corpus in atarget language, such as the exemplary method 50 of FIG. 3. In anothersuch embodiment, the processor-executable instructions 126 may beconfigured to implement a method of translating a source corpus in asource language into a target language using a language translation ruleset comprising at least one treelet translation pair and at least onelanguage order template, such as the exemplary method 70 of FIG. 4. Manysuch computer-readable media may be devised by those of ordinary skillin the art that are configured to operate in accordance with thetechniques presented herein.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

As used in this application, the terms “component,” “module,” “system”,“interface”, and the like are generally intended to refer to acomputer-related entity, either hardware, a combination of hardware andsoftware, software, or software in execution. For example, a componentmay be, but is not limited to being, a process running on a processor, aprocessor, an object, an executable, a thread of execution, a program,and/or a computer. By way of illustration, both an application runningon a controller and the controller can be a component. One or morecomponents may reside within a process and/or thread of execution and acomponent may be localized on one computer and/or distributed betweentwo or more computers.

Furthermore, the claimed subject matter may be implemented as a method,apparatus, or article of manufacture using standard programming and/orengineering techniques to produce software, firmware, hardware, or anycombination thereof to control a computer to implement the disclosedsubject matter. The term “article of manufacture” as used herein isintended to encompass a computer program accessible from anycomputer-readable device, carrier, or media. Of course, those skilled inthe art will recognize many modifications may be made to thisconfiguration without departing from the scope or spirit of the claimedsubject matter.

FIG. 8 and the following discussion provide a brief, general descriptionof a suitable computing environment to implement embodiments of one ormore of the provisions set forth herein. The operating environment ofFIG. 8 is only one example of a suitable operating environment and isnot intended to suggest any limitation as to the scope of use orfunctionality of the operating environment. Example computing devicesinclude, but are not limited to, personal computers, server computers,hand-held or laptop devices, mobile devices (such as mobile phones,Personal Digital Assistants (PDAs), media players, and the like),multiprocessor systems, consumer electronics, mini computers, mainframecomputers, distributed computing environments that include any of theabove systems or devices, and the like.

Although not required, embodiments are described in the general contextof “computer readable instructions” being executed by one or morecomputing devices. Computer readable instructions may be distributed viacomputer readable media (discussed below). Computer readableinstructions may be implemented as program modules, such as functions,objects, Application Programming Interfaces (APIs), data structures, andthe like, that perform particular tasks or implement particular abstractdata types. Typically, the functionality of the computer readableinstructions may be combined or distributed as desired in variousenvironments.

FIG. 8 illustrates an example of a system 130 comprising a computingdevice 132 configured to implement one or more embodiments providedherein. In one configuration, computing device 132 includes at least oneprocessing unit 136 and memory 138. Depending on the exact configurationand type of computing device, memory 138 may be volatile (such as RAM,for example), non-volatile (such as ROM, flash memory, etc., forexample) or some combination of the two. This configuration isillustrated in FIG. 8 by dashed line 134.

In other embodiments, device 132 may include additional features and/orfunctionality. For example, device 132 may also include additionalstorage (e.g., removable and/or non-removable) including, but notlimited to, magnetic storage, optical storage, and the like. Suchadditional storage is illustrated in FIG. 8 by storage 140. In oneembodiment, computer readable instructions to implement one or moreembodiments provided herein may be in storage 140. Storage 140 may alsostore other computer readable instructions to implement an operatingsystem, an application program, and the like. Computer readableinstructions may be loaded in memory 138 for execution by processingunit 136, for example.

The term “computer readable media” as used herein includes computerstorage media. Computer storage media includes volatile and nonvolatile,removable and non-removable media implemented in any method ortechnology for storage of information such as computer readableinstructions or other data. Memory 138 and storage 140 are examples ofcomputer storage media. Computer storage media includes, but is notlimited to, RAM, ROM, EEPROM, flash memory or other memory technology,CD-ROM, Digital Versatile Disks (DVDs) or other optical storage,magnetic cassettes, magnetic tape, magnetic disk storage or othermagnetic storage devices, or any other medium which can be used to storethe desired information and which can be accessed by device 132. Anysuch computer storage media may be part of device 132.

Device 132 may also include communication connection(s) 146 that allowsdevice 132 to communicate with other devices. Communicationconnection(s) 146 may include, but is not limited to, a modem, a NetworkInterface Card (NIC), an integrated network interface, a radio frequencytransmitter/receiver, an infrared port, a USB connection, or otherinterfaces for connecting computing device 132 to other computingdevices. Communication connection(s) 146 may include a wired connectionor a wireless connection. Communication connection(s) 146 may transmitand/or receive communication media.

The term “computer readable media” may include communication media.Communication media typically embodies computer readable instructions orother data in a “modulated data signal” such as a carrier wave or othertransport mechanism and includes any information delivery media. Theterm “modulated data signal” may include a signal that has one or moreof its characteristics set or changed in such a manner as to encodeinformation in the signal.

Device 132 may include input device(s) 144 such as keyboard, mouse, pen,voice input device, touch input device, infrared cameras, video inputdevices, and/or any other input device. Output device(s) 142 such as oneor more displays, speakers, printers, and/or any other output device mayalso be included in device 132. Input device(s) 144 and output device(s)142 may be connected to device 132 via a wired connection, wirelessconnection, or any combination thereof. In one embodiment, an inputdevice or an output device from another computing device may be used asinput device(s) 144 or output device(s) 142 for computing device 132.

Components of computing device 132 may be connected by variousinterconnects, such as a bus. Such interconnects may include aPeripheral Component Interconnect (PCI), such as PCI Express, aUniversal Serial Bus (USB), firewire (IEEE 1394), an optical busstructure, and the like. In another embodiment, components of computingdevice 132 may be interconnected by a network. For example, memory 138may be comprised of multiple physical memory units located in differentphysical locations interconnected by a network.

Those skilled in the art will realize that storage devices utilized tostore computer readable instructions may be distributed across anetwork. For example, a computing device 150 accessible via network 148may store computer readable instructions to implement one or moreembodiments provided herein. Computing device 132 may access computingdevice 150 and download a part or all of the computer readableinstructions for execution. Alternatively, computing device 132 maydownload pieces of the computer readable instructions, as needed, orsome instructions may be executed at computing device 132 and some atcomputing device 150.

Various operations of embodiments are provided herein. In oneembodiment, one or more of the operations described may constitutecomputer readable instructions stored on one or more computer readablemedia, which if executed by a computing device, will cause the computingdevice to perform the operations described. The order in which some orall of the operations are described should not be construed as to implythat these operations are necessarily order dependent. Alternativeordering will be appreciated by one skilled in the art having thebenefit of this description. Further, it will be understood that not alloperations are necessarily present in each embodiment provided herein.

Moreover, the word “exemplary” is used herein to mean serving as anexample, instance, or illustration. Any aspect or design describedherein as “exemplary” is not necessarily to be construed as advantageousover other aspects or designs. Rather, use of the word exemplary isintended to present concepts in a concrete fashion. As used in thisapplication, the term “or” is intended to mean an inclusive “or” ratherthan an exclusive “or”. That is, unless specified otherwise, or clearfrom context, “X employs A or B” is intended to mean any of the naturalinclusive permutations. That is, if X employs A; X employs B; or Xemploys both A and B, then “X employs A or B” is satisfied under any ofthe foregoing instances. In addition, the articles “a” and “an” as usedin this application and the appended claims may generally be construedto mean “one or more” unless specified otherwise or clear from contextto be directed to a singular form.

Also, although the disclosure has been shown and described with respectto one or more implementations, equivalent alterations and modificationswill occur to others skilled in the art based upon a reading andunderstanding of this specification and the annexed drawings. Thedisclosure includes all such modifications and alterations and islimited only by the scope of the following claims. In particular regardto the various functions performed by the above described components(e.g., elements, resources, etc.), the terms used to describe suchcomponents are intended to correspond, unless otherwise indicated, toany component which performs the specified function of the describedcomponent (e.g., that is functionally equivalent), even though notstructurally equivalent to the disclosed structure which performs thefunction in the herein illustrated exemplary implementations of thedisclosure. In addition, while a particular feature of the disclosuremay have been disclosed with respect to only one of severalimplementations, such feature may be combined with one or more otherfeatures of the other implementations as may be desired and advantageousfor any given or particular application. Furthermore, to the extent thatthe terms “includes”, “having”, “has”, “with”, or variants thereof areused in either the detailed description or the claims, such terms areintended to be inclusive in a manner similar to the term “comprising.”

What is claimed is:
 1. A method of generating a language translationrule set comprising at least one language order template using at leastone source training corpus in a source language aligned with a paralleltarget training corpus in a target language on a computer having aprocessor, the method comprising: executing on the processorinstructions configured to: for respective parallel training corpora:parse the source corpus to identify element types for respective sourcetraining corpus elements, generate a parse tree mapping source trainingcorpus elements to parallel target training corpus elements, generate atleast one candidate treelet translation pair based on the parse tree,and generate at least one candidate order template based on the parsetree and the element types; add at least one treelet translation pairfrom the candidate treelet translation pairs to the language translationrule set; and add at least one order template from the candidate ordertemplates to the language translation rule set.
 2. The method of claim1, the instructions configured to: upon identifying an ordering ofelement types comprising at least one element type specified by a firstlanguage order template and at least one unspecified element type:generate a second language order template comprising the first languageorder template and including in the ordering the unspecified elementtypes, and add the second language order template to the languagetranslation rule set.
 3. The method of claim 1, the instructionsconfigured to: generate an alignment model of the source language andthe target language according to the source training corpus and theparallel target training corpus, and add the alignment model to thelanguage translation rule set.
 4. The method of claim 3, the alignmentmodel comprising at least one dependency treelet aligning sourceelements with target elements.
 5. The method of claim 1, theinstructions configured to: identify element types for respective sourceelements of the source language; generate at least one source languageorder template specifying an ordering of at least two element typesaccording to the source training corpus; and add the source languageorder template to the language translation rule set.
 6. The method ofclaim 5, the instructions configured to: upon failing to identifyelement types of respective target elements of the target language:generate at least one language order template comprising the ordering oftarget elements aligned with source elements specified in at least onesource language order template, and add the at least one language ordertemplate to the language translation rule set.
 7. A method oftranslating a source corpus in a source language into a target languageusing a language translation rule set comprising at least one treelettranslation pair and at least one language order template on a computerhaving a processor, the method comprising: executing on the processorinstructions configured to: parse the source corpus to identify elementtypes for respective source corpus elements; generate a parse treemapping the source corpus elements; select at least one treelettranslation pair mapping at least one source corpus element to at leastone target corpus element; select language order templates correspondingto unordered source corpus elements; and generate a target corpusaccording to the parse tree, selected treelet translation pairs, andselected language order templates.
 8. The method of claim 7: thelanguage translation rule set comprising an alignment model of thesource language and the target language, and the selecting comprising:selecting target elements aligned with source elements of the sourcecorpus according to the alignment model.
 9. The method of claim 8: thealignment model comprising at least one dependency treelet aligningsource elements with target elements, and the selecting comprising:identifying at least one dependency treelet matching the sourceelements, and selecting the target elements of the dependency treelet.10. The method of claim 9, the choosing comprising: choosing at leastone language order template specifying an ordering in the targetlanguage of at least two element types of the target elements andspecifying at least one element type for respective target elements ofthe dependency treelet.
 11. The method of claim 8: the alignment modelspecifying an alignment probability between at least one source elementand at least one target element; and the selecting comprising: selectingtarget elements aligned with source elements that together presentacceptable alignment probabilities according to the alignment model. 12.The method of claim 7, the language translation rule set comprising atleast one source language order template.
 13. The method of claim 12,the selecting comprising: identifying element types of the sourceelements; verifying identified element types against at least one sourcelanguage order template matching the element types of the sourceelements of the source corpus; and selecting target elements of elementtypes matching the element types of the source elements.
 14. The methodof claim 12, the choosing comprising: upon failing to choose a languageorder template specifying an ordering in the target language of at leasttwo element types of the target elements: identify source elementsaligned with the target elements; choose at least one source languageorder template specifying an ordering in the source language of at leasttwo element types of the source elements; and choose at least onelanguage order template comprising the ordering of target elementsaligned with the source elements specified in the least one chosensource language order template.
 15. The method of claim 7, theinstructions configured to: upon identifying an ordering of targetelement types not specified by a language order template: generate a newlanguage order template specifying an ordering of the target elementtypes in the target language, and add the new language order template tothe language translation rule set.
 16. The method of claim 7, thechoosing comprising: choosing a first language order template specifyingan ordering in the target language of at least two element types of thetarget elements, and recursively choosing a language order templatespecifying an ordering in the target language of: at least one elementtype of at least one unordered target element, and at least one elementtype of at least one ordered target element.
 17. The method of claim 16,the recursively choosing performed according to a beam search.
 18. Themethod of claim 17, the beam search constrained, for respective chosenlanguage order templates, by a maximum of recursively evaluated languageorder templates.
 19. The method of claim 17: respective language ordertemplates comprising an ordering probability, and the beam searchconstrained by at least one of: a minimum ordering probability forrecursively evaluated language order templates, and a maximum ofrecursively evaluated language order templates before ordering thetarget elements according to the ordering specified by the at least onechosen language order template together having an acceptable orderingprobability.
 20. A nonvolatile memory comprising processor-executableinstructions that, when executed by a processor of a device, cause thedevice to translate a source corpus in a source language into a targetlanguage using a language translation rule set comprising at least onetreelet translation pair and at least one language order template by:parsing the source corpus to identify element types for respectivesource corpus elements; generating a parse tree mapping the sourcecorpus elements; selecting at least one treelet translation pair mappingat least one source corpus element to at least one target corpuselement; selecting language order templates corresponding to unorderedsource corpus elements; and generating a target corpus according to theparse tree, selected treelet translation pairs, and selected languageorder templates.